/********************************** (C) COPYRIGHT *******************************
* File Name          : crc16.h
* Author             : nx666
* Version            : V1.0.0
* Date               : 2023/07/22
* Description        : crc16相关.
*******************************************************************************/
#ifndef __CRC16_H
#define __CRC16_H

#ifdef __cplusplus
extern "C" {
#endif

#include "common_type.h"


uInt16 CRC16_CCITT(uInt8 *data, int datalen);
uInt16 CRC16_CCITT_FALSE(uInt8 *data, int datalen);
uInt16 CRC16_XMODEM(uInt8 *data, int datalen);
uInt16 CRC16_X25(uInt8 *data, int datalen);
uInt16 CRC16_MODBUS(uInt8 *data, int datalen);
uInt16 CRC16_DNP(uInt8 *data, int datalen);
uInt16 CRC16_USB(uInt8 *data, int datalen);
uInt16 CRC16_IBM(uInt8 *data, int datalen);
uInt16 CRC16_MAXIM(uInt8 *data, int datalen);

#ifdef __cplusplus
}
#endif

#endif /*__CRC16_H */